package com.sise.bl.dao;


import com.sise.bl.entity.Cart;
import com.sise.bl.entity.User;

import java.util.List;

public interface CartDao {
    /**
     * 根据用户id 和 商品id 查询
     *
     * @param uid 用户id
     * @param pid 商品id
     * @return
     */
    List<Cart> hasCart(Integer uid, Integer pid);

    /**
     * 修改购物车
     *
     * @param cart
     */
    void updateCart(Cart cart);

    /**
     * 添加购物车
     *
     * @param cart
     */
    void insertCart(Cart cart);

    /**
     * 根据用户 id 查询所有
     *
     * @param uid 用户id
     * @return List<Cart>
     */
    List<Cart> selectCartsByUid(Integer uid);

    /**
     * 根据购物车 id 查询
     *
     * @param cid 购物车表唯一标识
     * @return
     */
    Cart selectCartsByCid(Integer cid);

    /**
     * 购物车 删除
     *
     * @param cart
     */
    void deleteCart(Cart cart);

    /**
     * 根据uid删除所有该用户的所有购物车
     *
     * @param uid
     */
    void deleteCartByUid(String uid);

    /**
     * 根据商品 id 删除购物车
     * @param pid
     */
    void deleteCartByPid(Integer pid);
}
